<template>
  <HomePanel title="新鲜好物" ref="target" sub-title="新鲜出炉 品质靠谱">
    <template #right>
      <xtx-more></xtx-more>
    </template>
    <template #default>
      <!-- <ul ref="pannel" class="goods-list">
        <li v-for="item in prdList" :key="item.id">
          <RouterLink to="/">
            <img :src="item.picture" alt="" />
            <p class="name">{{ item.name }}</p>
            <p class="price">&yen;{{ item.price }}</p>
          </RouterLink>
        </li>
      </ul> -->
    <HomeList :goods="prdList" />
    </template>
  </HomePanel>
</template>

<script>
import HomePanel from './home-panel'
import { findNew } from '@/api/home'
import { ref } from 'vue'
import HomeList from './home-list.vue'
import { useObserver } from '@/hooks'
// vue3 自定义钩子函数(函数是编程
const useNew = () => {
  // 商品列表
  const prdList = ref([])
  //   获取商品列表的方法
  const getPrdList = async () => {
    const { result } = await findNew()
    console.log(result)
    prdList.value = result
  }
  //   onMounted(() => {
  //     getPrdList()
  //   })
  return { prdList, getPrdList }
}
export default {
  components: {
    HomePanel,
    HomeList
  },
  setup () {
    // const { prdList } = useNew()
    const { prdList, getPrdList } = useNew()

    const { target } = useObserver(getPrdList)
    // // 商品列表
    // const prdList = ref([])
    // // 获取商品列表的方法
    // const getPrdList = async () => {
    //   const { result } = await findNew()
    //   console.log(result)
    //   prdList.value = result
    // }
    // onMounted(() => {
    //   getPrdList()
    // })
    return {
      prdList,
      target
    }
  }
}
</script>

<style scoped lang='less'>
// .goods-list {
//   display: flex;
//   justify-content: space-between;
//   height: 406px;
//   li {
//     width: 306px;
//     height: 406px;
//     background: #f0f9f4;
//     // 激活效果
//     transition: all 0.5s;
//     &:hover {
//       transform: translate3d(0, -6px, 0);
//       box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2);
//     }
//     // end
//     img {
//       width: 306px;
//       height: 306px;
//     }
//     p {
//       font-size: 22px;
//       padding-top: 12px;
//       text-align: center;
//       text-overflow: ellipsis;
//       overflow: hidden;
//       white-space: nowrap;
//     }
//     .price {
//       color: @priceColor;
//     }
//   }
// }
</style>
